A robot is a mechanical device which moves like a human being by making use of electric and magnetic actions. The term “robot” is said to be derived from the Slavic word “ROBOTA” (slavish machine). In our country, the widespread use of robots began at the end of the 1960s, many of which were industrial robots, such as manipulators and conveyance robots, used, for example, for the purpose of achieving automatic industrial operations in factories without humans in attendance.
In recent years, advances have been made in the research and development of legged mobile robots which are designed using as a model the motion and mechanism of the body of an animal, such as a human being or an ape, which moves erect using two feet. There are increasing expectations for putting such robots into practical use. Legged mobile robots which reproduce the motions and bodily mechanisms of a human being are called humanoid robots.
Bipedal motion in an erect orientation is unstable compared to, for example, crawling or motion using four or six legs. Therefore, in this case, the orientation and walking are difficult to control. However, bipedal motion in an erect orientation is advantageous in that it is a flexible motion. Therefore, robots capable of such a motion can, for example, move along a walking surface of a working path, such as a rough surface or a surface having obstacles, or move along a discontinuous surface, such as moving up and down steps or a ladder.
Many technologies for controlling the orientation of and allowing stable walking of bipedal mobile robots have already been proposed. Here, “stable walking” means “moving using the legs without falling.” Controlling the orientations of robots for achieving stable orientations is very important in preventing the robots from falling. One reason is that, when robots fall, they stop performing their tasks, as a result of which considerable time and labor are required for the robots to get up and re-start their actual tasks again. Another reason is that, when robots fall, the robots themselves or objects against which the falling robots strike may be fatally damaged.
Many of the technologies for controlling the orientations of legged mobile robots or preventing them from falling while walking make use of ZMP (zero moment point) as a norm for determining the degree of walking stability. The norm for determining the degree of walking stability by ZMP is based on D'Alembert's principle in which gravitation and inertial force from a walking system to a floor surface and their moments balance floor reaction force and floor reaction moment from the floor surface to the walking system. The inference in terms of dynamics is that there is a point, that is, a ZMP where a pitch axis moment and a roll axis moment are zero on or within a side of a supporting polygon (that is, a ZMP stable area) defined by a floor surface and the points of contact of the soles with the floor. (Refer to, for example, “Legged Locomotion Robots” by Miomir Vukobratovic', and “Hoko Robot to Jinko no Ashi” by Ichiro Kato and published by The Nikkan Kogyo Shinbun Ltd.)
In summary, at any instant of walking, ZMP exists within the supporting polygon defined by the feet and floor surface and is a point allowing a robot to walk stably without falling (rotary motion of the body) as long as the robot exerts a force upon the floor surface in a pushing direction.
According to a bipedal walking pattern based on ZMP, the points where the soles contact the floor can be previously set, so that, for example, it is easy to consider kinematic constraints on the ends of the feet in accordance with the shape of the floor surface. When ZMP is used as a norm for determining the degree of stability, a trajectory instead of force is used as a target value for controlling motion. Therefore, technically speaking, the probability putting ZMP into practical use is increased.
The mode of motion of most of the related legged mobile robots is walking in which either leg is always in contact with the floor surface. For legged mobile robots for ordinary use, walking is a safe, efficient, and optimal mode of motion because excessive force is not applied to a mechanical/electrical system.
Motion having a floor non-contact period in which reaction from the floor is not received is a situation in which it is not sufficient for legged mobile robots to have only a walking function. When legged mobile robots move in contact with the floor where there is gravity, they are not continuously in a floor non-contact state for a long period of time. However, they may be in a floor non-contact state for a short period of time or discontinuously. Examples of such situations are jumping across a gap, jumping down from a higher level, running to move faster, and changing the standing position by hopping for maintaining balance.
There are still not many examples of research on controlling balance when such legged mobile robots are not in contact with a surface. Outstanding pioneering researches are disclosed in, for example, “Hanpuku Choyaku Model Biomechanism 5,” 1985, published by University of Tokyo Press, Kiyotoshi Matsuoka, pp. 4501-4509; and the International Journal of Robotics Research, vol. 3, No. 2, 1984, Marc H. Raibert and two other: “Experiments in Balance with a 3D One-Legged Hopping Machine,” pp. 75-92. However, these researches have not been successful in providing a practical control system of legged mobile robots for the following reasons.    {circle around (1)} Since massless legs are assumed, considerable limitations are placed on mechanical designing freedom.    {circle around (2)} Since only continuous hopping or jumping is assumed, the dynamics regarding transition to a walking state or stopped state is not satisfactorily studied.    {circle around (3)} It is difficult to impose geometrical constraints on the trajectories of the ends of the feet.
A method of calculating a motion pattern of a legged mobile robot when floor contact and floor non-contact conditions are mixed by expanding the use of the ZMP norm is disclosed in “Dorikigaku Filter ni yoru Ningengata Robot no Zenshin Undo Seisei,” authored by Keiichiro Nagasaka, in Tokyo Daigaku Kogakubu Joho Kogaku Senko Hakase Ronbun, 1999. However, according to this document, since a convergence calculation is performed to solve a nonlinear equation, the calculation load is high, making it necessary to previously calculate a motion pattern offline. In other words, a motion pattern having a floor contact period and a floor contact period in, for example, walking, running, or hopping, cannot be generated in real time.
As described above, today, the method of calculating a motion pattern based on a ZMP norm is the dominant basic controlling method for controlling the motion of a legged mobile robot. The greatest merit of using the ZMP as a norm for determining the stability of the body of a robot is that it is of high practical use, such as ZMP easily providing geometrical constraints on the ends of the feet or being applicable to a wide range of mechanical models, etc. For example, there is a report about a structure of a flexible control system based on a technology of generating walking pattern a real time in order to allow a robot to walk while generating a stable motion pattern on board during its motion. (Refer to, for example, Japanese Patent Application No. 2002-288745 already assigned to the applicant.)
As mentioned above, practical controlling means for motion including a floor non-contact period, such as in walking/hopping, has not yet been proposed.
The first problem that prevents legged motion including a floor contact period and a floor non-contact period from being practically realized is that most of the controlling methods impose many limitations regarding mechanical models. In particular, since many of the methods ignore the masses of the legs because it is difficult to handle changes in inertia of a robot caused by leg motions above a surface, these methods cannot be applied to many practical legged mobile robots. (Refer to, for example, “Hanpuku Choyaku Model Biomechanism 5,” 1985, published by University of Tokyo Press, Kiyotoshi Matsuoka, pp. 4501-4509; and the International Journal of Robotics Research, vol. 3, No. 2, 1984, Marc H. Raibert and two other: “Experiments in Balance with a 3D One-Legged Hopping Machine,” pp. 75-92.)
Typical present-day humanoid robots have at least six degrees of freedom in one leg. Although such a legged mobile robot having many degrees of freedom in its leg requires many actuators, it is difficult to mount all of these many actuators to its main body (portion of the body near the center of gravity, such as the waist), and a considerable number of actuators are installed in the legs (probably to prevent accidental torque interference by wire conduction.) In the first place, the legs support the entire weight of a legged mobile robot, and, thus, must have mechanical strength. Therefore, the structural members have considerable weight.
Therefore, in general, the masses of the legs are increased, and, thus, cannot be ignored in a dynamic model. Consequently, it is difficult to apply related techniques to legged mobile robots having large leg masses.
The second problem is that the number of running/hopping controlling algorithms for allowing transition between walking and stopping states is small.
As already mentioned above, a legged mobile robot rarely runs or hops constantly, and, thus, is often in a stopped state or a walking state. When necessary, the robot is made to run/hop, after which it is made to walk or stop again. Depending upon the circumstances, a robot may suddenly hop from a floor contact state, or may walk gradually faster and run, and, then, smoothly slow down, walk, and stop again.
There is an earnest desire for a general controlling method which makes it possible to perform seamless motion changes even between various, irregular contact and non-contact motions while properly maintaining dynamic balance.
The third problem is that most of the running/hopping or jumping controlling methods cannot add geometrical constraints.
In particular, there are many situations in which geometrical constraints are to be imposed upon position/orientation trajectories of feet end points in an inertial coordinate system. There are many methods of manipulating a floor contact point in order to maintain balance of the body of a robot. In order to quantitatively control a legged mobile robot, it is desirable that the trajectories of the feet ends be capable of being manifestly specified. For example, it is desirable that parameters, such as walking footstep/period or the heights of the soles when hopping or jumping, be capable of being specified by a user program. When the robot is required to, for example, run up steps or jump over a plurality of successive gaps, it is not desirable to manipulate the trajectories of the feet ends for maintaining balance.
The method of controlling walking by generating a walking pattern based on a ZMP norm is very advantageous from the practical point of view in that it can impose such motion constraints. This advantage is also demanded when the use of a ZMP norm is expanded to a motion having a floor non-contact period.
The fourth problem is that there is an earnest demand for a method which can change a motion pattern in real time so as to satisfy an asynchronous outside request.
In order to allow free motion of a legged mobile robot in an actual environment, it is necessary to provide a function for immediately re-planning the motion of the whole body while maintaining dynamic balance so as to satisfy a request for a change in the motion of the upper part of the body and a request for a change in crural motion, such as footstep, step period, angle of traverse, or feet lifting height, input at various timings. Previously forming a motion pattern offline will not satisfy such requests. In addition, it is difficult to satisfy the aforementioned outside requests by a control system which only maintains balance.